package com.bbs.service;

import com.bbs.entity.BBSPost;
import com.bbs.util.PageResult;

import java.util.List;
import java.util.Map;

public interface IBBSPostService {
    /**
     * 保存帖子
     */
    int savePost(BBSPost bbsPost);

    /**
     * 通过帖子ID获取帖子详情
     */
    BBSPost getBBSPostById(Long bbsPostId);

    /**
     * 获取详情和浏览数加1
     */
    BBSPost getBBSPostForDetail(Long bbsPostId);

    /**
     * 修改帖子
     */
    int updateBBSPost(BBSPost bbsPost);

    /**
     * 删除帖子
     */
    int delBBSPost(Long userId, Long postId);

    /**
     * 首页帖子列表
     */
    PageResult getBBSPostPageForIndex(Map<String, Object> params);

    /**
     * 近期热议帖子列表
     */
    List getHotTopicBBSPostList();

    /**
     * 根据userId查询发布的所有帖子
     */
    List<BBSPost> getMyBBSPostList(Long userId);

    /**
     * 根据userId获取最近发帖列表
     */
    List<BBSPost> getRecentPostListByUserId(Long userId);
}
